
<!DOCTYPE html>
<!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
<!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
<!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
<head>
  <meta charset="utf-8">
  <title>ksnowlv</title>
  <meta name="author" content="律威">

  
  <meta name="description" content="一.创建主题文件。 1.ir_black.terminal 内容如下： 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 &hellip;">
  

  <!-- http://t.co/dKP3o1e -->
  <meta name="HandheldFriendly" content="True">
  <meta name="MobileOptimized" content="320">
  <meta name="viewport" content="width=device-width, initial-scale=1">

  
  <link rel="canonical" href="http://ksnowlv.github.io/blog/page/13">
  <link href="/favicon.png" rel="icon">
  <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css">
  <link href="/atom.xml" rel="alternate" title="ksnowlv" type="application/atom+xml">
  <script src="/javascripts/modernizr-2.0.js"></script>
  <script src="//ajax.useso.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
  <script>!window.jQuery && document.write(unescape('%3Cscript src="./javascripts/lib/jquery.min.js"%3E%3C/script%3E'))</script>
  <script src="/javascripts/octopress.js" type="text/javascript"></script>
  <!--Fonts from Google"s Web font directory at http://google.com/webfonts -->
<link href="http://fonts.useso.com/css?family=PT+Serif:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">
<link href="http://fonts.useso.com/css?family=PT+Sans:regular,italic,bold,bolditalic" rel="stylesheet" type="text/css">

  
  <script type="text/javascript">
    var _gaq = _gaq || [];
     _gaq.push(['_setAccount', 'UA-39546615-2']);
    // _gaq.push(['_trackPageview']);

    // (function() {
    //   var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    //   ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    //   var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    // })();

    _gaq.push(['_trackPageview']);

      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src='http://droidyue-tools.qiniudn.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
      })();
  </script>


</head>

<body   >
  <header role="banner"><hgroup>
  <h1><a href="/">ksnowlv</a></h1>
  
    <h2>回顾过去,总结以往;立足现在,铭记当下;技术为主,笔记而已.</h2>
  
</hgroup>

</header>
  <nav role="navigation"><ul class="subscription" data-subscription="rss">
  <li><a href="/atom.xml" rel="subscribe-rss" title="subscribe via RSS">RSS</a></li>
  
</ul>
  
<form action="http://google.com/search" method="get">
  <fieldset role="search">
    <input type="hidden" name="q" value="site:ksnowlv.github.io" />
    <input class="search" type="text" name="q" results="0" placeholder="Search"/>
  </fieldset>
</form>
  
<ul class="main-navigation">
  <li><a href="/">博客首页</a></li>
  <li><a href="/blog/archives">文章列表</a></li>
  <!-- <li><a href="/about-me">关于我</a></li>
 -->
</ul>

</nav>
  <div id="main">
    <div id="content">
      <div class="blog-index">
  
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/30/mac-terminal-change-color/">Mac Terminal换主题</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-30T09:14:00+08:00" pubdate data-updated="true">Jul 30<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/30/mac-terminal-change-color/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h4>一.创建主题文件。</h4>

<h4>1.ir_black.terminal</h4>

<h4>内容如下：</h4>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
<span class='line-number'>66</span>
<span class='line-number'>67</span>
<span class='line-number'>68</span>
<span class='line-number'>69</span>
<span class='line-number'>70</span>
<span class='line-number'>71</span>
<span class='line-number'>72</span>
<span class='line-number'>73</span>
<span class='line-number'>74</span>
<span class='line-number'>75</span>
<span class='line-number'>76</span>
<span class='line-number'>77</span>
<span class='line-number'>78</span>
<span class='line-number'>79</span>
<span class='line-number'>80</span>
<span class='line-number'>81</span>
<span class='line-number'>82</span>
<span class='line-number'>83</span>
<span class='line-number'>84</span>
<span class='line-number'>85</span>
<span class='line-number'>86</span>
<span class='line-number'>87</span>
<span class='line-number'>88</span>
<span class='line-number'>89</span>
<span class='line-number'>90</span>
<span class='line-number'>91</span>
<span class='line-number'>92</span>
<span class='line-number'>93</span>
<span class='line-number'>94</span>
<span class='line-number'>95</span>
<span class='line-number'>96</span>
<span class='line-number'>97</span>
<span class='line-number'>98</span>
<span class='line-number'>99</span>
<span class='line-number'>100</span>
<span class='line-number'>101</span>
<span class='line-number'>102</span>
<span class='line-number'>103</span>
<span class='line-number'>104</span>
<span class='line-number'>105</span>
<span class='line-number'>106</span>
<span class='line-number'>107</span>
<span class='line-number'>108</span>
<span class='line-number'>109</span>
<span class='line-number'>110</span>
<span class='line-number'>111</span>
<span class='line-number'>112</span>
<span class='line-number'>113</span>
<span class='line-number'>114</span>
<span class='line-number'>115</span>
<span class='line-number'>116</span>
<span class='line-number'>117</span>
<span class='line-number'>118</span>
<span class='line-number'>119</span>
<span class='line-number'>120</span>
<span class='line-number'>121</span>
<span class='line-number'>122</span>
<span class='line-number'>123</span>
<span class='line-number'>124</span>
<span class='line-number'>125</span>
<span class='line-number'>126</span>
<span class='line-number'>127</span>
<span class='line-number'>128</span>
<span class='line-number'>129</span>
<span class='line-number'>130</span>
<span class='line-number'>131</span>
<span class='line-number'>132</span>
<span class='line-number'>133</span>
<span class='line-number'>134</span>
<span class='line-number'>135</span>
<span class='line-number'>136</span>
<span class='line-number'>137</span>
<span class='line-number'>138</span>
<span class='line-number'>139</span>
<span class='line-number'>140</span>
<span class='line-number'>141</span>
<span class='line-number'>142</span>
<span class='line-number'>143</span>
<span class='line-number'>144</span>
<span class='line-number'>145</span>
<span class='line-number'>146</span>
<span class='line-number'>147</span>
<span class='line-number'>148</span>
<span class='line-number'>149</span>
<span class='line-number'>150</span>
<span class='line-number'>151</span>
<span class='line-number'>152</span>
<span class='line-number'>153</span>
<span class='line-number'>154</span>
<span class='line-number'>155</span>
<span class='line-number'>156</span>
<span class='line-number'>157</span>
<span class='line-number'>158</span>
<span class='line-number'>159</span>
<span class='line-number'>160</span>
<span class='line-number'>161</span>
<span class='line-number'>162</span>
<span class='line-number'>163</span>
<span class='line-number'>164</span>
<span class='line-number'>165</span>
<span class='line-number'>166</span>
<span class='line-number'>167</span>
<span class='line-number'>168</span>
<span class='line-number'>169</span>
<span class='line-number'>170</span>
<span class='line-number'>171</span>
<span class='line-number'>172</span>
<span class='line-number'>173</span>
<span class='line-number'>174</span>
<span class='line-number'>175</span>
<span class='line-number'>176</span>
<span class='line-number'>177</span>
<span class='line-number'>178</span>
<span class='line-number'>179</span>
<span class='line-number'>180</span>
<span class='line-number'>181</span>
<span class='line-number'>182</span>
<span class='line-number'>183</span>
<span class='line-number'>184</span>
<span class='line-number'>185</span>
<span class='line-number'>186</span>
<span class='line-number'>187</span>
<span class='line-number'>188</span>
<span class='line-number'>189</span>
<span class='line-number'>190</span>
<span class='line-number'>191</span>
<span class='line-number'>192</span>
<span class='line-number'>193</span>
<span class='line-number'>194</span>
<span class='line-number'>195</span>
<span class='line-number'>196</span>
<span class='line-number'>197</span>
<span class='line-number'>198</span>
<span class='line-number'>199</span>
<span class='line-number'>200</span>
<span class='line-number'>201</span>
<span class='line-number'>202</span>
<span class='line-number'>203</span>
<span class='line-number'>204</span>
<span class='line-number'>205</span>
<span class='line-number'>206</span>
<span class='line-number'>207</span>
<span class='line-number'>208</span>
<span class='line-number'>209</span>
<span class='line-number'>210</span>
<span class='line-number'>211</span>
<span class='line-number'>212</span>
<span class='line-number'>213</span>
<span class='line-number'>214</span>
<span class='line-number'>215</span>
<span class='line-number'>216</span>
<span class='line-number'>217</span>
<span class='line-number'>218</span>
<span class='line-number'>219</span>
<span class='line-number'>220</span>
<span class='line-number'>221</span>
<span class='line-number'>222</span>
<span class='line-number'>223</span>
<span class='line-number'>224</span>
<span class='line-number'>225</span>
<span class='line-number'>226</span>
<span class='line-number'>227</span>
<span class='line-number'>228</span>
<span class='line-number'>229</span>
<span class='line-number'>230</span>
<span class='line-number'>231</span>
<span class='line-number'>232</span>
<span class='line-number'>233</span>
<span class='line-number'>234</span>
<span class='line-number'>235</span>
<span class='line-number'>236</span>
<span class='line-number'>237</span>
<span class='line-number'>238</span>
<span class='line-number'>239</span>
<span class='line-number'>240</span>
<span class='line-number'>241</span>
<span class='line-number'>242</span>
<span class='line-number'>243</span>
<span class='line-number'>244</span>
<span class='line-number'>245</span>
<span class='line-number'>246</span>
<span class='line-number'>247</span>
<span class='line-number'>248</span>
<span class='line-number'>249</span>
<span class='line-number'>250</span>
<span class='line-number'>251</span>
<span class='line-number'>252</span>
<span class='line-number'>253</span>
<span class='line-number'>254</span>
<span class='line-number'>255</span>
<span class='line-number'>256</span>
<span class='line-number'>257</span>
<span class='line-number'>258</span>
<span class='line-number'>259</span>
<span class='line-number'>260</span>
<span class='line-number'>261</span>
<span class='line-number'>262</span>
<span class='line-number'>263</span>
<span class='line-number'>264</span>
<span class='line-number'>265</span>
<span class='line-number'>266</span>
<span class='line-number'>267</span>
<span class='line-number'>268</span>
<span class='line-number'>269</span>
<span class='line-number'>270</span>
<span class='line-number'>271</span>
<span class='line-number'>272</span>
<span class='line-number'>273</span>
<span class='line-number'>274</span>
<span class='line-number'>275</span>
<span class='line-number'>276</span>
<span class='line-number'>277</span>
<span class='line-number'>278</span>
<span class='line-number'>279</span>
<span class='line-number'>280</span>
<span class='line-number'>281</span>
<span class='line-number'>282</span>
<span class='line-number'>283</span>
<span class='line-number'>284</span>
<span class='line-number'>285</span>
<span class='line-number'>286</span>
<span class='line-number'>287</span>
<span class='line-number'>288</span>
</pre></td><td class='code'><pre><code class='xml'><span class='line'><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span>
</span><span class='line'><span class="cp">&lt;!DOCTYPE plist PUBLIC &quot;-//Apple//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;</span>
</span><span class='line'><span class="nt">&lt;plist</span> <span class="na">version=</span><span class="s">&quot;1.0&quot;</span><span class="nt">&gt;</span>
</span><span class='line'><span class="nt">&lt;dict&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>BackgroundColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKjCwwTVSRudWxs0w0ODxARElYk
</span><span class='line'>  Y2xhc3NcTlNDb2xvclNwYWNlVU5TUkdCgAIQAUYwIDAgMADSFBUWF1gkY2xhc3Nlc1ok
</span><span class='line'>  Y2xhc3NuYW1lohcYV05TQ29sb3JYTlNPYmplY3QIERofKTI3Oj9BU1ddZGt4foCCiY6X
</span><span class='line'>  oqWtAAAAAAAAAQEAAAAAAAAAGQAAAAAAAAAAAAAAAAAAALY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>Bell<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorBlink<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKjCwwTVSRudWxs0w0ODxARElYk
</span><span class='line'>  Y2xhc3NcTlNDb2xvclNwYWNlVU5TUkdCgAIQAU8QFzEgMC42NDcwNTg4NCAwLjM3NjQ3
</span><span class='line'>  MDYA0hQVFhdYJGNsYXNzZXNaJGNsYXNzbmFtZaIXGFdOU0NvbG9yWE5TT2JqZWN0CBEa
</span><span class='line'>  HykyNzo/QVNXXWRreH6AgpyhqrW4wAAAAAAAAAEBAAAAAAAAABkAAAAAAAAAAAAAAAAA
</span><span class='line'>  AADJ
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorType<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>1<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>DisableANSIColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>Font<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKkCwwVFlUkbnVsbNQNDg8QERIT
</span><span class='line'>  FFYkY2xhc3NWTlNTaXplVk5TTmFtZVhOU2ZGbGFnc4ADI0AoAAAAAAAAgAIQEFZNb25h
</span><span class='line'>  Y2/SFxgZGlgkY2xhc3Nlc1okY2xhc3NuYW1lohobVk5TRm9udFhOU09iamVjdAgRGh8p
</span><span class='line'>  Mjc6P0FTWF5nbnV8hYeQkpSboKm0t74AAAAAAAABAQAAAAAAAAAcAAAAAAAAAAAAAAAA
</span><span class='line'>  AAAAxw==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>FontAntialias<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>SelectionColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKjCwwTVSRudWxs0w0ODxARElYk
</span><span class='line'>  Y2xhc3NcTlNDb2xvclNwYWNlVU5TUkdCgAIQAU8QIzAuMDcwNTg4MjM5IDAuMDc0NTA5
</span><span class='line'>  ODA3IDAuMTY4NjI3NDYA0hQVFhdYJGNsYXNzZXNaJGNsYXNzbmFtZaIXGFdOU0NvbG9y
</span><span class='line'>  WE5TT2JqZWN0CBEaHykyNzo/QVNXXWRreH6AgqittsHEzAAAAAAAAAEBAAAAAAAAABkA
</span><span class='line'>  AAAAAAAAAAAAAAAAAADV
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShouldLimitScrollback<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>0<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowActiveProcessInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowCommandKeyInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowDimensionsInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowShellCommandInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowTTYNameInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowWindowSettingsNameInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>TextBoldColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKjCwwTVSRudWxs0w0ODxARElYk
</span><span class='line'>  Y2xhc3NcTlNDb2xvclNwYWNlV05TV2hpdGWAAhADQjEA0hQVFhdYJGNsYXNzZXNaJGNs
</span><span class='line'>  YXNzbmFtZaIXGFdOU0NvbG9yWE5TT2JqZWN0CBEaHykyNzo/QVNXXWRreICChIeMlaCj
</span><span class='line'>  qwAAAAAAAAEBAAAAAAAAABkAAAAAAAAAAAAAAAAAAAC0
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>TextColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUGCQpYJHZlcnNpb25UJHRvcFkkYXJjaGl2ZXJYJG9iamVjdHMS
</span><span class='line'>  AAGGoNEHCFRyb290gAFfEA9OU0tleWVkQXJjaGl2ZXKjCwwTVSRudWxs0w0ODxARElYk
</span><span class='line'>  Y2xhc3NcTlNDb2xvclNwYWNlV05TV2hpdGWAAhADSzAuOTQ3NTgwNjQA0hQVFhdYJGNs
</span><span class='line'>  YXNzZXNaJGNsYXNzbmFtZaIXGFdOU0NvbG9yWE5TT2JqZWN0CBEaHykyNzo/QVNXXWRr
</span><span class='line'>  eICChJCVnqmstAAAAAAAAAEBAAAAAAAAABkAAAAAAAAAAAAAAAAAAAC9
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>UseBoldFonts<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>UseBrightBold<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>VisualBell<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>blackColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg5+cnj6Dn5yePoOfnJ4+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>blueColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg5eWFj+DzMtLP4P//n4/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightBlackColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg/n4+D6D+fj4PoP5+Pg+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightBlueColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg7YuNj+D3d5cP4MAjn8/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightCyanColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg+A7YD+D4FVgP4P/PX8/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightGreenColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg881Tz8Bg6w6LD8Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightMagentaColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAYOdAR0/g/8bfz8Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightRedColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAYO3tjY/g7GwMD8Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightWhiteColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAQEBAYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightYellowColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAQGDzbVMPwGG
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>columnCount<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>120<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>cyanColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg8fGRj+DxsVFP4P//n4/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>greenColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg6moKD8Bg8HAwD4Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>keyMapBoundKeys<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;dict&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F708<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[25~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F709<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[26~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70A<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[28~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70B<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[29~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70C<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[31~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70D<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[22~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70E<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[33~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F70F<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[34~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F729<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[H<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F72B<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[F<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F72C<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[5~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>$F72D<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[6~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F704<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>OP<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F705<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>OQ<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F706<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>OR<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F707<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>OS<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F708<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[15~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F709<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[17~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70A<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[18~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70B<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[19~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70C<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[20~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70D<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[21~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70E<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[23~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F70F<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[24~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F710<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[25~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F711<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[26~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F712<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[28~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F713<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[29~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F714<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[31~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F715<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[32~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F716<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[33~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F717<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[34~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F728<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[3~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F729<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[H<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F72B<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[F<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F72C<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>scrollPageUp:<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>F72D<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>scrollPageDown:<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>^F702<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[5D<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>^F703<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[5C<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F704<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[17~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F705<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[18~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F706<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[19~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F707<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[20~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F708<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[21~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F709<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[23~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70A<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[24~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70B<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[25~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70C<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[26~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70D<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[28~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70E<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[29~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F70F<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[31~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F710<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[32~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F711<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[33~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>      <span class="nt">&lt;key&gt;</span>~F712<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>      <span class="nt">&lt;string&gt;</span>[34~<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;/dict&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>magentaColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAYPn5uY+g/79fT8Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>name<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;string&gt;</span>IR_Black<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>redColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAYPZ2Ng+g8HAwD4Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>rowCount<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>20<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>shellExitAction<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>1<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>type<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;string&gt;</span>Window Settings<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>whiteColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg+/7bj+D7/tuP4Pv+24/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>yellowColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAQGDt7Y2PwGG
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'><span class="nt">&lt;/dict&gt;</span>
</span><span class='line'><span class="nt">&lt;/plist&gt;</span>
</span></code></pre></td></tr></table></div></figure>


<p></p>

<h4>2.saschalein.terminal</h4>

<h4>内容如下:</h4>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
<span class='line-number'>66</span>
<span class='line-number'>67</span>
<span class='line-number'>68</span>
<span class='line-number'>69</span>
<span class='line-number'>70</span>
<span class='line-number'>71</span>
<span class='line-number'>72</span>
<span class='line-number'>73</span>
<span class='line-number'>74</span>
<span class='line-number'>75</span>
<span class='line-number'>76</span>
<span class='line-number'>77</span>
<span class='line-number'>78</span>
<span class='line-number'>79</span>
<span class='line-number'>80</span>
<span class='line-number'>81</span>
<span class='line-number'>82</span>
<span class='line-number'>83</span>
<span class='line-number'>84</span>
<span class='line-number'>85</span>
<span class='line-number'>86</span>
<span class='line-number'>87</span>
<span class='line-number'>88</span>
<span class='line-number'>89</span>
<span class='line-number'>90</span>
<span class='line-number'>91</span>
<span class='line-number'>92</span>
<span class='line-number'>93</span>
<span class='line-number'>94</span>
<span class='line-number'>95</span>
<span class='line-number'>96</span>
<span class='line-number'>97</span>
<span class='line-number'>98</span>
<span class='line-number'>99</span>
<span class='line-number'>100</span>
<span class='line-number'>101</span>
<span class='line-number'>102</span>
<span class='line-number'>103</span>
<span class='line-number'>104</span>
<span class='line-number'>105</span>
<span class='line-number'>106</span>
<span class='line-number'>107</span>
<span class='line-number'>108</span>
<span class='line-number'>109</span>
<span class='line-number'>110</span>
<span class='line-number'>111</span>
<span class='line-number'>112</span>
<span class='line-number'>113</span>
<span class='line-number'>114</span>
<span class='line-number'>115</span>
<span class='line-number'>116</span>
<span class='line-number'>117</span>
<span class='line-number'>118</span>
<span class='line-number'>119</span>
<span class='line-number'>120</span>
<span class='line-number'>121</span>
<span class='line-number'>122</span>
<span class='line-number'>123</span>
<span class='line-number'>124</span>
<span class='line-number'>125</span>
<span class='line-number'>126</span>
<span class='line-number'>127</span>
<span class='line-number'>128</span>
<span class='line-number'>129</span>
<span class='line-number'>130</span>
<span class='line-number'>131</span>
<span class='line-number'>132</span>
<span class='line-number'>133</span>
<span class='line-number'>134</span>
<span class='line-number'>135</span>
<span class='line-number'>136</span>
<span class='line-number'>137</span>
<span class='line-number'>138</span>
<span class='line-number'>139</span>
<span class='line-number'>140</span>
<span class='line-number'>141</span>
<span class='line-number'>142</span>
<span class='line-number'>143</span>
<span class='line-number'>144</span>
<span class='line-number'>145</span>
<span class='line-number'>146</span>
<span class='line-number'>147</span>
<span class='line-number'>148</span>
<span class='line-number'>149</span>
<span class='line-number'>150</span>
<span class='line-number'>151</span>
<span class='line-number'>152</span>
<span class='line-number'>153</span>
<span class='line-number'>154</span>
<span class='line-number'>155</span>
<span class='line-number'>156</span>
<span class='line-number'>157</span>
<span class='line-number'>158</span>
<span class='line-number'>159</span>
<span class='line-number'>160</span>
<span class='line-number'>161</span>
<span class='line-number'>162</span>
<span class='line-number'>163</span>
<span class='line-number'>164</span>
<span class='line-number'>165</span>
<span class='line-number'>166</span>
<span class='line-number'>167</span>
<span class='line-number'>168</span>
<span class='line-number'>169</span>
<span class='line-number'>170</span>
<span class='line-number'>171</span>
<span class='line-number'>172</span>
</pre></td><td class='code'><pre><code class='xml'><span class='line'><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span>
</span><span class='line'><span class="cp">&lt;!DOCTYPE plist PUBLIC &quot;-//Apple//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;</span>
</span><span class='line'><span class="nt">&lt;plist</span> <span class="na">version=</span><span class="s">&quot;1.0&quot;</span><span class="nt">&gt;</span>
</span><span class='line'><span class="nt">&lt;dict&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>BackgroundColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIFxhUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABowkKEVUkbnVsbNMLDA0ODxBVTlNSR0JcTlNDb2xvclNwYWNlViRjbGFz
</span><span class='line'>  c08QKjAuMDcwNTg4MjM4NTQgMC4wNzA1ODgyMzg1NCAwLjA3MDU4ODIzODU0ABABgALS
</span><span class='line'>  EhMUFVgkY2xhc3Nlc1okY2xhc3NuYW1lohUWV05TQ29sb3JYTlNPYmplY3QSAAGGoF8Q
</span><span class='line'>  D05TS2V5ZWRBcmNoaXZlcggRFh8oMjU6PEBGTVNgZ5SWmJ2msbS8xcoAAAAAAAABAQAA
</span><span class='line'>  AAAAAAAZAAAAAAAAAAAAAAAAAAAA3A==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>BlinkText<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorBlink<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIFxhUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABowkKEVUkbnVsbNMLDA0ODxBVTlNSR0JcTlNDb2xvclNwYWNlViRjbGFz
</span><span class='line'>  c08QHDEgMC4yNTA2NjY0Mzk1IDAuODU5MjY3NzExNgAQAYAC0hITFBVYJGNsYXNzZXNa
</span><span class='line'>  JGNsYXNzbmFtZaIVFldOU0NvbG9yWE5TT2JqZWN0EgABhqBfEA9OU0tleWVkQXJjaGl2
</span><span class='line'>  ZXIIERYfKDI1OjxARk1TYGeGiIqPmKOmrre8AAAAAAAAAQEAAAAAAAAAGQAAAAAAAAAA
</span><span class='line'>  AAAAAAAAAM4=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>CursorType<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;integer&gt;</span>1<span class="nt">&lt;/integer&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>DisableANSIColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>Font<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIGhtUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABpAkKExRVJG51bGzUCwwNDg8QERJWTlNTaXplVk5TTmFtZVYkY2xhc3NY
</span><span class='line'>  TlNmRmxhZ3MjQCgAAAAAAACAAoADEBBaQW5kYWxlTW9ub9IVFhcYWCRjbGFzc2VzWiRj
</span><span class='line'>  bGFzc25hbWWiGBlWTlNGb250WE5TT2JqZWN0EgABhqBfEA9OU0tleWVkQXJjaGl2ZXII
</span><span class='line'>  ERYfKDI1OjxBR1BXXmVud3l7fYiNlqGkq7S5AAAAAAAAAQEAAAAAAAAAHAAAAAAAAAAA
</span><span class='line'>  AAAAAAAAAMs=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>FontAntialias<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>Linewrap<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ProfileCurrentVersion<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;real&gt;</span>2.0099999999999998<span class="nt">&lt;/real&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>SelectionColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIFxhUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABowkKEVUkbnVsbNMLDA0ODxBVTlNSR0JcTlNDb2xvclNwYWNlViRjbGFz
</span><span class='line'>  c08QKjAuMDM0NTc4Mzk0MTQgMCAwLjkxMzI2NTI4NzkgMC42NDk5OTk5NzYyABABgALS
</span><span class='line'>  EhMUFVgkY2xhc3Nlc1okY2xhc3NuYW1lohUWV05TQ29sb3JYTlNPYmplY3QSAAGGoF8Q
</span><span class='line'>  D05TS2V5ZWRBcmNoaXZlcggRFh8oMjU6PEBGTVNgZ5SWmJ2msbS8xcoAAAAAAAABAQAA
</span><span class='line'>  AAAAAAAZAAAAAAAAAAAAAAAAAAAA3A==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowShellCommandInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>ShowWindowSettingsNameInTitle<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>TerminalType<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;string&gt;</span>rxvt<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>TextBoldColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIFxhUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABowkKEVUkbnVsbNMLDA0ODxBVTlNSR0JcTlNDb2xvclNwYWNlViRjbGFz
</span><span class='line'>  c08QJzAuODAwMDAwMDExOSAwLjgwMDAwMDAxMTkgMC43NzY0NzA2MDE2ABABgALSEhMU
</span><span class='line'>  FVgkY2xhc3Nlc1okY2xhc3NuYW1lohUWV05TQ29sb3JYTlNPYmplY3QSAAGGoF8QD05T
</span><span class='line'>  S2V5ZWRBcmNoaXZlcggRFh8oMjU6PEBGTVNgZ5GTlZqjrrG5wscAAAAAAAABAQAAAAAA
</span><span class='line'>  AAAZAAAAAAAAAAAAAAAAAAAA2Q==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>TextColor<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  YnBsaXN0MDDUAQIDBAUIFxhUJHRvcFgkb2JqZWN0c1gkdmVyc2lvblkkYXJjaGl2ZXLR
</span><span class='line'>  BgdUcm9vdIABowkKEVUkbnVsbNMLDA0ODxBVTlNSR0JcTlNDb2xvclNwYWNlViRjbGFz
</span><span class='line'>  c08QJzAuNjI3NDUxMDAyNiAwLjYyNzQ1MTAwMjYgMC42Mjc0NTEwMDI2ABABgALSEhMU
</span><span class='line'>  FVgkY2xhc3Nlc1okY2xhc3NuYW1lohUWV05TQ29sb3JYTlNPYmplY3QSAAGGoF8QD05T
</span><span class='line'>  S2V5ZWRBcmNoaXZlcggRFh8oMjU6PEBGTVNgZ5GTlZqjrrG5wscAAAAAAAABAQAAAAAA
</span><span class='line'>  AAAZAAAAAAAAAAAAAAAAAAAA2Q==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>UseBoldFonts<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>UseBrightBold<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>VisualBell<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;true/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>blackColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg9nY2D2D6ejoPYPx8PA9AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>blueColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg83MzD6D2tlZP4Pw728/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightBlackColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg6GgoD6Dp6amPoOpqKg+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightBlueColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg83MzD6D2tlZP4Pw728/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightCyanColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg6SjIz+Du7o6P4PAvz8/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightGreenColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg7++Pj+D7u1tP4O/vr4+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightMagentaColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg5+eHj+D397ePoP//n4/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightRedColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmAYPNzMw+g56dHT8Bhg==
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightWhiteColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg/n4eD+D+fh4P4Pz8nI/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>brightYellowColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg+fmZj+D3NtbP4Pp6Og+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>cyanColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg728vD6D4+LiPoPr6uo+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>greenColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg6emJj+D4+JiP4O5uDg+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>magentaColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg5+eHj+D397ePoP//n4/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>name<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;string&gt;</span>Homebrew<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>redColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg/r5eT+DmZgYPoPl5OQ+AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>type<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;string&gt;</span>Window Settings<span class="nt">&lt;/string&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>useOptionAsMetaKey<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;false/&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>whiteColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMBhARm
</span><span class='line'>  ZmZmg83MTD+DzcxMP4PHxkY/AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'>  <span class="nt">&lt;key&gt;</span>yellowColour<span class="nt">&lt;/key&gt;</span>
</span><span class='line'>  <span class="nt">&lt;data&gt;</span>
</span><span class='line'>  BAtzdHJlYW10eXBlZIHoA4QBQISEhAdOU0NvbG9yAISECE5TT2JqZWN0AIWEAWMChARm
</span><span class='line'>  ZmZmg/79fT+DmJcXP4P5+Pg9AYY=
</span><span class='line'>  <span class="nt">&lt;/data&gt;</span>
</span><span class='line'><span class="nt">&lt;/dict&gt;</span>
</span><span class='line'><span class="nt">&lt;/plist&gt;</span>
</span></code></pre></td></tr></table></div></figure>


<p>创建<code>ir_black.terminal</code>和<code>saschalein.terminal</code>并执行</p>

<p>在终端的菜单->偏好设置其中之一，再做配置的修改。</p>

<h4>二.下载：colors。</h4>

<p>命令行切换到colors所在目录：</p>

<pre><code>chmod +x colors
./colors 
</code></pre>

<p><img src="/images/post/2014-07-30-mac-terminal-change-color/1.png" alt="image" /></p>

<p>配置成功！</p>

<h4>三.配置登录脚本</h4>

<p>下载<a href="http://">bash_profile</a>和<a href="http://">bashrc</a>
在<code>/Users/ksnowlv/</code>目录下,替换<code>.bash_profile</code>和<code>.bashrc</code>文件。</p>

<h4>四.重新打开终端，即可看到效果。</h4>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/29/git-rm/">Git Rm</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-29T00:27:00+08:00" pubdate data-updated="true">Jul 29<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/29/git-rm/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><p>  git rm为git删除命令，常用格式如下</p>

<pre><code>  git rm -r &lt;filepath&gt;       #从git和本地文件中删除某个文件或某个文件夹
  git rm   &lt;filename&gt;        #从git和本地文件中删除某个文件
  git rm --cached &lt;filepath&gt; #把文件从git仓库中删除,但，文件仍然保存在当前文件目录中
</code></pre>

<h4>1.删除文件目录a及其目录下的文件a.txt</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git rm -r a
rm 'a/d.txt'
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$ls
a.text b.txt  c.txt
</code></pre>

<h4>2.删除文件c.txt</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git rm c.txt
rm 'c.txt'
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$ls
a
</code></pre>

<h4>3.删除git仓库中的文件目录a及其目录下的文件a.txt，但是本地目录中仍然保留。</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git rm -r --cache a
rm 'a/a.txt'
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git status
On branch master
Changes to be committed:
(use "git reset HEAD &lt;file&gt;..." to unstage)

deleted:    b.txt

Untracked files:
(use "git add &lt;file&gt;..." to include in what will be committed)
a/
</code></pre>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/29/git-stash/">Git Stash</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-29T00:14:00+08:00" pubdate data-updated="true">Jul 29<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/29/git-stash/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h4>查看git statsh相关命令：在mac terminal输入<code>git help stash</code></h4>

<pre><code>git stash list                    #显示出所有的暫存清单
git stash show                    #显示所暂存的一些修改 
git stash drop stash@{number}     #丢弃暂存的修改
git stash stash@{number}          #取出某一次的暫存修改
git stash branch &lt;branchname&gt;     #暂存到某一分支
git stash [save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]
                [-u|--include-untracked] [-a|--all] [&lt;message&gt;]]
                                  #暂存修改
git stash clear                   #清除所有暂存
git stash create [&lt;message&gt;]      #创建暂存信息
git stash store [-m|--message &lt;message&gt;] [-q|--quiet] &lt;commit&gt;
</code></pre>

<p>示例如下：</p>

<h4>创建c.txt文件，并暂存，暂存信息为“add c.txt”</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$vim c.txt
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git add .
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash save "add c.txt"
Saved working directory and index state On master: add c.txt
HEAD is now at 5636eac add new file
</code></pre>

<h4>显示暂存列表信息</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash list
stash@{0}: On master: add c.txt
stash@{1}: On master: mm
stash@{2}: WIP on master: 5636eac add new file
</code></pre>

<h4>显示最近一次暂存的一些修改</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash show
 c.txt | 1 +
 1 file changed, 1 insertion(+)
</code></pre>

<h4>把stash@{2}的暂停版本更新到本地版本</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash apply stash@{2} 
On branch master
Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

new file:   b.txt
</code></pre>

<h4>丢弃stash@{2}的暂停版本</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash drop stash@{2}
Dropped stash@{2} (b6aaa50f4b36fb264b677bc4b35e51bf0601a3c0)
</code></pre>

<h4>显示最新的暂存列表信息</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash list
stash@{0}: On master: add c.txt
stash@{1}: On master: mm
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$
</code></pre>

<h4>把stash@{1}，stash@{0}暂存版本恢复到本地</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash apply stash@{1}
On branch master
Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

new file:   b.txt

ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash apply stash@{0}
On branch master
Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

new file:   b.txt
new file:   c.txt
</code></pre>

<h4>观察是不是先前暂停版本的文件</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$ls
a.text b.txt  c.txt
</code></pre>

<h4>显示暂存列表信息</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash list
stash@{0}: On master: add c.txt
stash@{1}: On master: mm
</code></pre>

<h4>清除暂存列表信息</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash clear
#暂存列表已经被清空
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git stash list
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$
</code></pre>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/29/git-revert/">Git Revert</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-29T00:14:00+08:00" pubdate data-updated="true">Jul 29<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/29/git-revert/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h4><code>git revert</code>撤销某次操作，此次操作之前的commit都会被保留。</h4>

<p>因此revert 只會使commit继续往前,优点是可以针对某個 commit 進行还原 并且留下还原记录</p>

<pre><code>git revert -n &lt;commit id&gt;     #撤销某次操作，commit id为提交号
git revert -n HEAD~&lt;number&gt;   #撤销某个版本，number为向前数的版本号。 
</code></pre>

<h4><code>git reset</code> 是撤销某次提交，但是此次之后的修改都会被退回到暂存区。</h4>

<h4>1.撤销到某一个提交号的版本。</h4>

<pre><code>git revert -n 08a94d26db3e7678d615625eb6c839729a21ac3f
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git status
On branch master
You are currently reverting commit 08a94d2.
  (all conflicts fixed: run "git revert --continue")
  (use "git revert --abort" to cancel the revert operation)

Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

deleted:    1.txt

ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$
</code></pre>

<h4>2.撤销到某个版本。</h4>

<pre><code>ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git revert -n HEAD~2
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$ls
a     a.txt
ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$git status
On branch master
You are currently reverting commit d5527c7.
  (all conflicts fixed: run "git revert --continue")
  (use "git revert --abort" to cancel the revert operation)

Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

deleted:    1.txt
new file:   a.txt
new file:   a/a.txt

ksnowlv@ksnowlvdeMacBook-Pro~/Music/gittest$
</code></pre>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/28/ping-guo-appnei-cun-zhan-yong-shang-xian/">iOS/iPad App内存占用上限(二)</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-28T11:13:00+08:00" pubdate data-updated="true">Jul 28<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/28/ping-guo-appnei-cun-zhan-yong-shang-xian/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h4>iOS/iPad App内存占用在打开许多App后，打开demo App,该demo App占用内存的上限能达到多少呢？</h4>

<h4>使用下面的代码,点击按钮后，观察内存警告时，App被kill时的日志输出。</h4>

<h5>内存警告时</h5>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
</pre></td><td class='code'><pre><code class='objective-c'><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">didReceiveMemoryWarning</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="p">[</span><span class="n">super</span> <span class="n">didReceiveMemoryWarning</span><span class="p">];</span>
</span><span class='line'>    <span class="c1">// Dispose of any resources that can be recreated.</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;------------------------memory warning&quot;</span><span class="p">);</span>
</span><span class='line'>    <span class="p">[</span><span class="n">self</span> <span class="n">mallocMemory</span><span class="p">];</span>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;------------------------memory warningx&quot;</span><span class="p">);</span>
</span><span class='line'><span class="p">}</span>
</span></code></pre></td></tr></table></div></figure>


<h5>手动触发该按钮事件后，等待被“kill”吧。</h5>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
</pre></td><td class='code'><pre><code class='objective-c'><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">IBAction</span><span class="p">)</span><span class="nf">startMallocEvent:</span><span class="p">(</span><span class="kt">id</span><span class="p">)</span><span class="nv">sender</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="k">if</span> <span class="p">(</span><span class="n">_timer</span><span class="p">.</span><span class="n">isValid</span><span class="p">)</span> <span class="p">{</span>
</span><span class='line'>        <span class="p">[</span><span class="n">_timer</span> <span class="n">invalidate</span><span class="p">];</span>
</span><span class='line'>    <span class="p">}</span>
</span><span class='line'>   <span class="n">_timer</span> <span class="o">=</span>  <span class="p">[</span><span class="n">NSTimer</span> <span class="nl">scheduledTimerWithTimeInterval:</span><span class="mf">0.05</span> <span class="nl">target:</span><span class="n">self</span> <span class="nl">selector:</span><span class="k">@selector</span><span class="p">(</span><span class="n">mallocMemory</span><span class="p">)</span> <span class="nl">userInfo:</span><span class="nb">nil</span> <span class="nl">repeats:</span><span class="n">YES</span><span class="p">];</span>
</span><span class='line'><span class="p">}</span>
</span><span class='line'>
</span><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">mallocMemory</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="k">const</span> <span class="n">CGFloat</span> <span class="n">KMemoryLength</span> <span class="o">=</span> <span class="mf">1024.0f</span> <span class="o">*</span> <span class="mf">1024.0f</span><span class="p">;</span>
</span><span class='line'>    <span class="n">_pMemory</span><span class="p">[</span><span class="n">_count</span><span class="p">]</span>  <span class="o">=</span> <span class="n">malloc</span><span class="p">(</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>    <span class="n">memset</span><span class="p">(</span><span class="n">_pMemory</span><span class="p">[</span><span class="n">_count</span><span class="p">],</span> <span class="mi">0</span><span class="p">,</span> <span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>    <span class="o">++</span><span class="n">_count</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>    <span class="c1">//实际内存</span>
</span><span class='line'>    <span class="k">struct</span> <span class="n">task_basic_info</span> <span class="n">info</span><span class="p">;</span>
</span><span class='line'>    <span class="n">mach_msg_type_number_t</span> <span class="n">size</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">info</span><span class="p">);</span>
</span><span class='line'>    <span class="n">kern_return_t</span> <span class="n">error</span> <span class="o">=</span> <span class="n">task_info</span><span class="p">(</span><span class="n">mach_task_self</span><span class="p">(),</span> <span class="n">TASK_BASIC_INFO</span><span class="p">,</span> <span class="p">(</span><span class="n">task_info_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">info</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">size</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="kt">long</span> <span class="n">curMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>    <span class="kt">long</span> <span class="n">curVirtualMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="k">if</span> <span class="p">(</span><span class="n">error</span> <span class="o">==</span> <span class="n">KERN_SUCCESS</span><span class="p">)</span> <span class="p">{</span>
</span><span class='line'>        <span class="n">curMemorySize</span> <span class="o">=</span> <span class="n">info</span><span class="p">.</span><span class="n">resident_size</span><span class="p">;</span>
</span><span class='line'>        <span class="n">curVirtualMemorySize</span> <span class="o">=</span> <span class="n">info</span><span class="p">.</span><span class="n">virtual_size</span><span class="p">;</span>
</span><span class='line'>    <span class="p">}</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mach_port_t</span> <span class="n">host_port</span> <span class="o">=</span> <span class="n">mach_host_self</span><span class="p">();</span>
</span><span class='line'>    <span class="n">mach_msg_type_number_t</span> <span class="n">host_size</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">vm_statistics_data_t</span><span class="p">)</span> <span class="o">/</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">integer_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">vm_size_t</span> <span class="n">pagesize</span><span class="p">;</span>
</span><span class='line'>    <span class="n">vm_statistics_data_t</span> <span class="n">vm_stat</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">host_page_size</span><span class="p">(</span><span class="n">host_port</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">pagesize</span><span class="p">);</span>
</span><span class='line'>    <span class="p">(</span><span class="kt">void</span><span class="p">)</span> <span class="n">host_statistics</span><span class="p">(</span><span class="n">host_port</span><span class="p">,</span> <span class="n">HOST_VM_INFO</span><span class="p">,</span> <span class="p">(</span><span class="n">host_info_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">vm_stat</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">host_size</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>    <span class="kt">long</span> <span class="n">freeMemorySize</span> <span class="o">=</span>  <span class="n">vm_stat</span><span class="p">.</span><span class="n">free_count</span> <span class="o">*</span> <span class="n">pagesize</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;curMemorySize = %5.1fM,VirtualMemorySize = %5.1fM,freeMemorySize = %5.1fM&quot;</span><span class="p">,</span>
</span><span class='line'>          <span class="n">curMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">curVirtualMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">freeMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">uint64_t</span> <span class="n">physicalMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>    <span class="n">uint64_t</span> <span class="n">userMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="kt">int</span> <span class="n">mib</span><span class="p">[</span><span class="mi">2</span><span class="p">];</span>
</span><span class='line'>    <span class="n">size_t</span> <span class="n">length</span><span class="p">;</span>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">CTL_HW</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">HW_MEMSIZE</span><span class="p">;</span>
</span><span class='line'>    <span class="n">length</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">int64_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">sysctl</span><span class="p">(</span><span class="n">mib</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">physicalMemorySize</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">length</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">HW_USERMEM</span><span class="p">;</span>
</span><span class='line'>    <span class="n">length</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">int64_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">sysctl</span><span class="p">(</span><span class="n">mib</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">userMemorySize</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">length</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;physicalMemorySize = %5.1fM,userMemorySize = %5.1fM&quot;</span><span class="p">,</span>
</span><span class='line'>          <span class="n">physicalMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">userMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'><span class="p">}</span>
</span></code></pre></td></tr></table></div></figure>


<h4>使用iPad mini2设备，统计7欠被杀死的情况。根据日志输出，整理其在被系统杀死时各项内存占用，如下：</h4>

<table>
<thead>
<tr>
<th></th>
<th> 序号  </th>
<th>  内存(M)  </th>
<th>  虚拟内存(M)  </th>
<th>  空闲内存(M)  </th>
<th>  物理内存(M)  </th>
<th>  非内核内存(M)   </th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td>1     </td>
<td>192.1      </td>
<td>  1275.4      </td>
<td>30.2         </td>
<td>976           </td>
<td>815         </td>
</tr>
<tr>
<td></td>
<td>2     </td>
<td>157.1      </td>
<td>  1304.6      </td>
<td>39.8         </td>
<td>976           </td>
<td>813         </td>
</tr>
<tr>
<td></td>
<td>3     </td>
<td>151.7      </td>
<td>  1277.4      </td>
<td>29.1         </td>
<td>976           </td>
<td>821         </td>
</tr>
<tr>
<td></td>
<td>4     </td>
<td>153.3      </td>
<td>  1304.7      </td>
<td>37.8         </td>
<td>976           </td>
<td>817.5       </td>
</tr>
<tr>
<td></td>
<td>5     </td>
<td>138.3      </td>
<td>  2073.9      </td>
<td>29.7         </td>
<td>976           </td>
<td>817.9       </td>
</tr>
<tr>
<td></td>
<td>6     </td>
<td>137.1      </td>
<td>  2074.4      </td>
<td>35.8         </td>
<td>976           </td>
<td>817.9       </td>
</tr>
</tbody>
</table>


<h4>结论：</h4>

<pre><code>1.占有虚拟内存 &lt; 2G,非内核内存占用在820M左右，即为死亡线。
2.内存警告线，离这个死亡线很近。
3.实际内存占用不高，虚拟内存较高，也会被“kill”。
根源：内存使用效率不高，dirty memory较高！
</code></pre>

<h4>因此，对内存的优化，需要集中两方面</h4>

<p>1.内存的占用。</p>

<p>2.内存的使用效率</p>

<pre><code>这个会涉及到cache,可能会增加内存的占用。
尽是提高clean memory，降低dirty memory。
</code></pre>

<h4>注：更详细的数据分析及结论，如果需要，可以联系我。</h4>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/27/ping-guo-appnei-cun-zhan-yong-shang-xian/">iOS/iPad App内存占用上限(一)</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-27T23:44:00+08:00" pubdate data-updated="true">Jul 27<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/27/ping-guo-appnei-cun-zhan-yong-shang-xian/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h4>iOS/iPad App内存占用在只有一个App运行时，该App占用内存的上限能达到多少呢？</h4>

<h4>关闭设备上所有其它应用,测试 demo app 占用内存上限.</h4>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
<span class='line-number'>66</span>
<span class='line-number'>67</span>
<span class='line-number'>68</span>
<span class='line-number'>69</span>
<span class='line-number'>70</span>
<span class='line-number'>71</span>
<span class='line-number'>72</span>
<span class='line-number'>73</span>
<span class='line-number'>74</span>
<span class='line-number'>75</span>
</pre></td><td class='code'><pre><code class='objective-c'><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">didReceiveMemoryWarning</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="p">[</span><span class="n">super</span> <span class="n">didReceiveMemoryWarning</span><span class="p">];</span>
</span><span class='line'>    <span class="c1">// Dispose of any resources that can be recreated.</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;------------------------memory warning&quot;</span><span class="p">);</span>
</span><span class='line'>    <span class="p">[</span><span class="n">self</span> <span class="n">mallocMemory</span><span class="p">];</span>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;------------------------memory warningx&quot;</span><span class="p">);</span>
</span><span class='line'><span class="p">}</span>
</span><span class='line'>
</span><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">IBAction</span><span class="p">)</span><span class="nf">startMallocEvent:</span><span class="p">(</span><span class="kt">id</span><span class="p">)</span><span class="nv">sender</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="k">if</span> <span class="p">(</span><span class="n">_timer</span><span class="p">.</span><span class="n">isValid</span><span class="p">)</span> <span class="p">{</span>
</span><span class='line'>        <span class="p">[</span><span class="n">_timer</span> <span class="n">invalidate</span><span class="p">];</span>
</span><span class='line'>    <span class="p">}</span>
</span><span class='line'>   <span class="n">_timer</span> <span class="o">=</span>  <span class="p">[</span><span class="n">NSTimer</span> <span class="nl">scheduledTimerWithTimeInterval:</span><span class="mf">0.05</span> <span class="nl">target:</span><span class="n">self</span> <span class="nl">selector:</span><span class="k">@selector</span><span class="p">(</span><span class="n">mallocMemory</span><span class="p">)</span> <span class="nl">userInfo:</span><span class="nb">nil</span> <span class="nl">repeats:</span><span class="n">YES</span><span class="p">];</span>
</span><span class='line'><span class="p">}</span>
</span><span class='line'>
</span><span class='line'><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">mallocMemory</span>
</span><span class='line'><span class="p">{</span>
</span><span class='line'>    <span class="k">const</span> <span class="n">CGFloat</span> <span class="n">KMemoryLength</span> <span class="o">=</span> <span class="mf">1024.0f</span> <span class="o">*</span> <span class="mf">1024.0f</span><span class="p">;</span>
</span><span class='line'>    <span class="n">_pMemory</span><span class="p">[</span><span class="n">_count</span><span class="p">]</span>  <span class="o">=</span> <span class="n">malloc</span><span class="p">(</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>    <span class="n">memset</span><span class="p">(</span><span class="n">_pMemory</span><span class="p">[</span><span class="n">_count</span><span class="p">],</span> <span class="mi">0</span><span class="p">,</span> <span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>    <span class="o">++</span><span class="n">_count</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>    <span class="c1">//实际内存</span>
</span><span class='line'>    <span class="k">struct</span> <span class="n">task_basic_info</span> <span class="n">info</span><span class="p">;</span>
</span><span class='line'>    <span class="n">mach_msg_type_number_t</span> <span class="n">size</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">info</span><span class="p">);</span>
</span><span class='line'>    <span class="n">kern_return_t</span> <span class="n">error</span> <span class="o">=</span> <span class="n">task_info</span><span class="p">(</span><span class="n">mach_task_self</span><span class="p">(),</span> <span class="n">TASK_BASIC_INFO</span><span class="p">,</span> <span class="p">(</span><span class="n">task_info_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">info</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">size</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="kt">long</span> <span class="n">curMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>    <span class="kt">long</span> <span class="n">curVirtualMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="k">if</span> <span class="p">(</span><span class="n">error</span> <span class="o">==</span> <span class="n">KERN_SUCCESS</span><span class="p">)</span> <span class="p">{</span>
</span><span class='line'>        <span class="n">curMemorySize</span> <span class="o">=</span> <span class="n">info</span><span class="p">.</span><span class="n">resident_size</span><span class="p">;</span>
</span><span class='line'>        <span class="n">curVirtualMemorySize</span> <span class="o">=</span> <span class="n">info</span><span class="p">.</span><span class="n">virtual_size</span><span class="p">;</span>
</span><span class='line'>    <span class="p">}</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mach_port_t</span> <span class="n">host_port</span> <span class="o">=</span> <span class="n">mach_host_self</span><span class="p">();</span>
</span><span class='line'>    <span class="n">mach_msg_type_number_t</span> <span class="n">host_size</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">vm_statistics_data_t</span><span class="p">)</span> <span class="o">/</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">integer_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">vm_size_t</span> <span class="n">pagesize</span><span class="p">;</span>
</span><span class='line'>    <span class="n">vm_statistics_data_t</span> <span class="n">vm_stat</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">host_page_size</span><span class="p">(</span><span class="n">host_port</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">pagesize</span><span class="p">);</span>
</span><span class='line'>    <span class="p">(</span><span class="kt">void</span><span class="p">)</span> <span class="n">host_statistics</span><span class="p">(</span><span class="n">host_port</span><span class="p">,</span> <span class="n">HOST_VM_INFO</span><span class="p">,</span> <span class="p">(</span><span class="n">host_info_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">vm_stat</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">host_size</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>    <span class="kt">long</span> <span class="n">freeMemorySize</span> <span class="o">=</span>  <span class="n">vm_stat</span><span class="p">.</span><span class="n">free_count</span> <span class="o">*</span> <span class="n">pagesize</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;curMemorySize = %5.1fM,VirtualMemorySize = %5.1fM,freeMemorySize = %5.1fM&quot;</span><span class="p">,</span>
</span><span class='line'>          <span class="n">curMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">curVirtualMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">freeMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">uint64_t</span> <span class="n">physicalMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>    <span class="n">uint64_t</span> <span class="n">userMemorySize</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="kt">int</span> <span class="n">mib</span><span class="p">[</span><span class="mi">2</span><span class="p">];</span>
</span><span class='line'>    <span class="n">size_t</span> <span class="n">length</span><span class="p">;</span>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">CTL_HW</span><span class="p">;</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">HW_MEMSIZE</span><span class="p">;</span>
</span><span class='line'>    <span class="n">length</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">int64_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">sysctl</span><span class="p">(</span><span class="n">mib</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">physicalMemorySize</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">length</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">mib</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">HW_USERMEM</span><span class="p">;</span>
</span><span class='line'>    <span class="n">length</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">int64_t</span><span class="p">);</span>
</span><span class='line'>    <span class="n">sysctl</span><span class="p">(</span><span class="n">mib</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">userMemorySize</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">length</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'>    <span class="n">NSLog</span><span class="p">(</span><span class="s">@&quot;physicalMemorySize = %5.1fM,userMemorySize = %5.1fM&quot;</span><span class="p">,</span>
</span><span class='line'>          <span class="n">physicalMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">,</span>
</span><span class='line'>          <span class="n">userMemorySize</span><span class="o">/</span><span class="n">KMemoryLength</span><span class="p">);</span>
</span><span class='line'>
</span><span class='line'><span class="p">}</span>
</span></code></pre></td></tr></table></div></figure>


<h4>测试工具:使用苹果自带测试工具,点击按钮后, 直到 app 被系统杀死。被杀死时    内存占用情况如下：</h4>

<pre><code>activity monitor 显示的内存占用为:468M.
allocation 显示的内存占用为:681M. 
</code></pre>

<p>详情如下：</p>

<p>   <img src="/images/post/2014-07-27-ping-guo-app-nei-cun-zhan-yong-shang-xian/1.png" alt="image" /></p>

<p>  <img src="/images/post/2014-07-27-ping-guo-app-nei-cun-zhan-yong-shang-xian/2.png" alt="image" /></p>

<p>连续几次结果在上述值多一点。</p>

<pre><code>曾有相关资料介绍,单个 app 占用内存上限为 ram 值的一半。
</code></pre>

<p>看来是有道理的。尽管如此, 我们不能奢求用户只开咱们一个App这种理想化的条件。</p>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/27/git-reset/">Git Reset</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-27T19:41:00+08:00" pubdate data-updated="true">Jul 27<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/27/git-reset/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><p>git reset三种撤消方式如下：</p>

<h4>1.git reset &mdash;mixed：</h4>

<pre><code>此为默认方式，不带任何参数的git reset，即时这种方式，它回退到某个版本，只保留源码，回退commit和index信息git 
   也就是说：取消了commit ，取消了add
</code></pre>

<h4>2.reset &mdash;soft  HEAD～number</h4>

<pre><code>回退到某个版本，只回退了commit的信息，不会恢复到index file一级。如果还要提交，直接commit即可
也就是说取消了commit
</code></pre>

<h4>3.git reset &mdash;hard <version></h4>

<pre><code>彻底回退到某个版本，本地的源码也会变为该版本的内容。
也就是说取消了commit ，取消了add，取消源文件修改
</code></pre>

<h4>说明：<code>--soft</code>和<code>--hard</code>后面为版本号</h4>

<p><code>HEAD~number</code>：<code>number</code>表示倒数第number次的提交结果</p>

<p><code>&lt;version&gt;</code>:可以通过<code>git log</code>获取，参见下面的样例。</p>

<h3>样例如下：</h3>

<h4>1.撤消add:撤消提交到暂存区的文件</h4>

<p>先添加一个文件</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ vim b.text
ksnowlvdeMacBook-Pro:gittest ksnowlv$ git add .
</code></pre>

<p>查看当前git状态</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD &lt;file&gt;..." to unstage)

new file:   b.text
</code></pre>

<p>使用<code>git reset</code>或<code>git reset b.text</code>撤消</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git reset
</code></pre>

<p>此时查看git状态</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git status
On branch master
Untracked files:
  (use "git add &lt;file&gt;..." to include in what will be committed)

    b.text

nothing added to commit but untracked files present (use "git add" to track)
</code></pre>

<h4>2.撤消commit:撤消commit到本地版本库的文件</h4>

<p>先创建并添加c.txt文件</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ vim c.txt
ksnowlvdeMacBook-Pro:gittest ksnowlv$ git add c.txt
ksnowlvdeMacBook-Pro:gittest ksnowlv$ git commit -a -m "add c.txt"
[master 66b155f] add c.txt
 1 file changed, 1 insertion(+)
 create mode 100644 c.txt
</code></pre>

<p>使用git log查看提交日志</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git log
commit 66b155f5f76ae0b48129638d082432fa2fcd62c8
Author: xxxx
Date:   Sun Jul 27 20:10:04 2014 +0800

add c.txt

commit 5320bdfd1d64f24fdcc2a9edbd056e56fbbf13b7
Author:  xxxx
Date:   Sun Jul 27 19:31:22 2014 +0800

add b.text

commit 5636eace1f76c6fa548cb126324f9ec8ad8a4f04
Author: xxxx
Date:   Sun Jul 27 19:21:48 2014 +0800

add new file
</code></pre>

<p> 撤消commit操作</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git reset --hard 5636eace1f76c6fa548cb126324f9ec8ad8a4f04
HEAD is now at 5636eac add new file
</code></pre>

<p>本地回退到该版本，如果想远程分支也回退到该版本，再强制推送到远程分支即可，</p>

<pre><code>git push -f origin master
</code></pre>

<h4>3.将本地的状态回退到和远程的一样</h4>

<p> 先将本地文件b.text修改下，观察是否回退到的远程.</p>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ vim b.text 
ksnowlvdeMacBook-Pro:gittest ksnowlv$ git reset --hard origin/master
HEAD is now at 804b9f4 modify b
</code></pre>

<p>b.text是和远程的相同的</p>

<h4>4.使用<code>HEAD~number</code>撤消</h4>

<pre><code>ksnowlvdeMacBook-Pro:gittest ksnowlv$ git reset --hard HEAD~1
HEAD is now at 5636eac add new file
ksnowlvdeMacBook-Pro:gittest ksnowlv$ ls
a.text
</code></pre>

<p>再强制推送到远程分支，即回到了想回的状态。</p>

<pre><code>git push -f origin master
</code></pre>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/27/mac-xia-git-ji-ben-ming-ling/">Mac下git基本命令</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-27T11:34:00+08:00" pubdate data-updated="true">Jul 27<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/27/mac-xia-git-ji-ben-ming-ling/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><h2>持续整理中&hellip;</h2>

<h4>git本地仓库由 git 维护的三棵“树”组成。</h4>

<h5>第一棵是 <code>工作目录</code>：它持有实际文件；</h5>

<h5>第二棵是 <code>暂存区(Index)</code>：它像个缓存区域，临时保存你的改动；</h5>

<h4>第三棵是 <code>HEAD</code>:它指向你最后一次提交的结果。</h4>

<h3>git 基本命令</h3>

<h4>1.git help</h4>

<pre><code>git --help              #git相关帮助
git                     #git相关帮助
git help -a             #available git commands in '/Applications/Xcode.app/Contents/Developer/usr/libexec/git-core'
git help -g             #git使用指南
git help &lt;command&gt;      #查看某一git命令的帮助
</code></pre>

<h4>2.git init</h4>

<pre><code>git init         #初始化一个版本库
</code></pre>

<h4>3.git remote</h4>

<pre><code>git remote             #列出已经存在的远程分支  
git remote -v          #列出远程详细信息，每一个名字后面列出其远程url及动作
git remote show origin #显示远程信息

git remote add origin &lt;url&gt;                   #关联名称为origin的远程服务器代码库
git remote set-url --push [name] [newUrl]     #修改远程仓库
</code></pre>

<h4>4.git add</h4>

<pre><code>git add .              #添加当前修改的文件到暂存区ut切换
git add --all          #添加当前修改的文件到暂存区
git add *              #添加当前目录所有修改的文件到暂存区
git add &lt;filename&gt;     #添加filename文件到暂存区 
</code></pre>

<h4>5.git commit</h4>

<pre><code>git commit –m "注释"        #提交修改
git commit -a –m "注释"     #提交所有的修改
</code></pre>

<h4>6.git push</h4>

<pre><code>git push origin &lt;branchname&gt;            #推送你的更新到远程分支
git push -u origin &lt;branchname&gt;         #将本地分支推到远程(如无远程分支则创建，用于初始化远程仓库)
git push origin :&lt;branchname&gt;           #删除远程某一分支，某些情况下无效的。
git push origin --delete &lt;branchname&gt;   #删除远程某一分支
</code></pre>

<h4>7.git branch</h4>

<pre><code>git branch                   #列出本地所有的分支，若分支名前有*，则表示此分支为当前分支
git branch &lt;branchname&gt;      #创建分支，不会切换到新分支，需要使用git checkout brannmae
git checout –b &lt;branchname&gt;  #创建了分支，自动从当前工作分支切换到了该分支上。
git branch –D  &lt;branchname&gt;  #删除本地分支
git merge &lt;branchname&gt;       #自动合并分支改动，但是，可能会出现冲突。
git checkout &lt;branchname&gt;    #切换到新分支，需要确保本地新分支是存在的
git branch  --all            #本地所有的本地和远程对应的分支
</code></pre>

<h4>8.git pull</h4>

<pre><code>git pull origin &lt;branchname&gt;  #获取(fetch)并且合并（merge）远端的改动。
</code></pre>

<h4>9.git clone</h4>

<pre><code>    git clone &lt;filepath&gt;  #创建一个本地仓库的克隆版本 
    git clone &lt;url&gt;       #克隆远端服务器上的仓库。
</code></pre>

<h4>10.git status</h4>

<pre><code>git status    #当前的GIT状态，会指出当前没有可更新的，或者需要添加提交修改等
</code></pre>

<h4>11.git reset</h4>

<pre><code>git reset                  #相当于git reset –mixed HEAD  
git reset --hard HEAD      #回到上次提交时的状态 
git reset HEAD &lt;filepath&gt;  #取消已经在暂存区里面等待被commit的文件
</code></pre>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/26/octopressbo-ke-ji-xu-yue-du/">Octopress博客继续阅读</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-26T20:56:00+08:00" pubdate data-updated="true">Jul 26<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/26/octopressbo-ke-ji-xu-yue-du/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><p>如果正文太长，不希望在首页直接显示完整内容，如何显示部分内容呢?</p>

<h4>1.在_config.yml文件中，添加显示部分内容的支持。</h4>

<pre><code>excerpt_link: "阅读全文&amp;rarr;"  
excerpt_separator: "&lt;!--more--&gt;"
</code></pre>

<h4>2.在博客适当的位置加上一句</h4>

<pre><code> &lt;!--more--&gt;
</code></pre>

<h4>后面的内容就会被按钮Read on→所替代，点击继续阅读。</h4>
</div>
  
  


    </article>
  
  
    <article>
      
  <header>
    
      <h1 class="entry-title"><a href="/blog/2014/07/26/octopressdai-ma-gao-liang/">Octopress代码高亮</a></h1>
    
    
      <p class="meta">
        








  


<time datetime="2014-07-26T19:33:00+08:00" pubdate data-updated="true">Jul 26<span>th</span>, 2014</time>
        
         | <a href="/blog/2014/07/26/octopressdai-ma-gao-liang/#disqus_thread">Comments</a>
        
      </p>
    
  </header>


  <div class="entry-content"><p>如何使用markdown文本中的代码高亮呢？</p>

<h3>1.反引号代码块</h3>

<p>   可以指定代码标题，语言，链接等等。语法格式如下：</p>

<pre><code>``` [language] [title] [url] [link text]
 代码块
```
</code></pre>

<p>以objective-c为例：</p>

<pre><code>··· objective-c 
    oc代码
···
</code></pre>

<p>效果如下：</p>

<figure class='code'><figcaption><span></span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class='objective-c'><span class='line'><span class="n">self</span><span class="p">.</span><span class="n">backgroundColor</span> <span class="o">=</span> <span class="p">[</span><span class="n">UIColor</span> <span class="n">redColor</span><span class="p">];</span>
</span></code></pre></td></tr></table></div></figure>


<h3>2.Code Block代码块</h3>

<p>   可以指定代码标题，语言，链接等等。语法格式如下：</p>

<pre><code> { % codeblock [title] [lang:language] [url] [link text] % }
  代码块
 { % endcodeblock % }
</code></pre>

<p> 以objective-c为例：</p>

<pre><code>{ % codeblock lang:objective-c  %} 
    oc代码
{ % endcodeblock  %} 
</code></pre>

<h4>注意:</h4>

<h5>1.{或}与%不要有空格，不然，不起作用。</h5>

<h5>2.如果上面语法中没有空格，会导致rake generate时出错.</h5>

<p>效果如下：</p>

<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
</pre></td><td class='code'><pre><code class='objective-c'><span class='line'>
</span><span class='line'><span class="n">self</span><span class="p">.</span><span class="n">backgroundColor</span> <span class="o">=</span> <span class="p">[</span><span class="n">UIColor</span> <span class="n">redColor</span><span class="p">];</span>
</span></code></pre></td></tr></table></div></figure>


<h3>3.更多代码高亮方式见：<a href="http://octopress.org/docs/blogging/code/">http://octopress.org/docs/blogging/code/</a></h3>
</div>
  
  


    </article>
  
  <div class="pagination">
    
      <a class="prev" href="/blog/page/14/">&larr; Older</a>
    
    <a href="/blog/archives">Blog Archives</a>
    
    <a class="next" href="/blog/page/12/">Newer &rarr;</a>
    
  </div>
</div>
<aside class="sidebar">
  
    <section>
  <h1>关于我</h1>
  <p>律威,QQ:309235009 微信:ksnowlv</p>
  <p>手机单机游戏/手机网游封神online/手机阅读/腾讯iOS地图客户端&实时公交&开放API(地图&街景)/iPad/iPhone淘宝客户端及性能优化</p>
  <p>目前在银客做银客/简理财/&#8230;</p>
  <p>能做一点,是一点;不求大成,不求一万年;积少成多,水到渠成!</p>
</section>
<section>
  <h1>最近发布</h1>
  <ul id="recent_posts">
    
      <li class="post">
        <a href="/blog/2017/04/26/android-drawable/">Android drawable</a>
      </li>
    
      <li class="post">
        <a href="/blog/2017/04/22/iOS-xia-shi-yong-ffmpeg/">iOS下使用ffmpeg</a>
      </li>
    
      <li class="post">
        <a href="/blog/2015/08/19/ios-you-xian-hou-tai-ren-wu/">iOS有限后台任务</a>
      </li>
    
      <li class="post">
        <a href="/blog/2015/08/19/android-xia-jie-ya-suo/">Android下gzip数据流解压缩</a>
      </li>
    
      <li class="post">
        <a href="/blog/2015/08/19/facebook-infer-de-shi-yong/">FaceBook-infer的使用</a>
      </li>
    
  </ul>
</section>
<section>
  <h1>分类</h1>
    <ul id="category-list"><li><a href='/blog/categories/android-jie-ya-suo/'>Android-解压缩 (1)</a></li><li><a href='/blog/categories/androidduo-xian-cheng/'>Android多线程 (3)</a></li><li><a href='/blog/categories/androidcha-jian/'>Android插件 (1)</a></li><li><a href='/blog/categories/androidhui-tu-./'>Android绘图。 (1)</a></li><li><a href='/blog/categories/androidwang-luo/'>Android网络 (1)</a></li><li><a href='/blog/categories/git/'>git (6)</a></li><li><a href='/blog/categories/githubbo-ke/'>github博客 (8)</a></li><li><a href='/blog/categories/ios/'>iOS (6)</a></li><li><a href='/blog/categories/ios-block/'>iOS-block (1)</a></li><li><a href='/blog/categories/ios-bug/'>iOS-Bug (2)</a></li><li><a href='/blog/categories/ios-memory/'>iOS-Memory (4)</a></li><li><a href='/blog/categories/ios-push/'>iOS-push (1)</a></li><li><a href='/blog/categories/ios-ui/'>iOS-UI (2)</a></li><li><a href='/blog/categories/ios-you-hua/'>iOS-优化 (1)</a></li><li><a href='/blog/categories/ios-nei-cun/'>iOS-内存 (1)</a></li><li><a href='/blog/categories/ios-ji-chu/'>iOS-基础 (3)</a></li><li><a href='/blog/categories/ios-duo-xian-cheng/'>iOS-多线程 (3)</a></li><li><a href='/blog/categories/ios-cun-chu/'>iOS-存储 (1)</a></li><li><a href='/blog/categories/ios-an-quan/'>iOS-安全 (1)</a></li><li><a href='/blog/categories/ios-wang-luo/'>iOS-网络 (13)</a></li><li><a href='/blog/categories/ios-jie-ya-suo/'>iOS-解压缩 (1)</a></li><li><a href='/blog/categories/ios-she-ji-mo-shi/'>iOS-设计模式 (1)</a></li><li><a href='/blog/categories/ios-diao-shi/'>iOS-调试 (1)</a></li><li><a href='/blog/categories/iosyou-hua/'>iOS优化 (1)</a></li><li><a href='/blog/categories/iosji-chu/'>iOS基础 (2)</a></li><li><a href='/blog/categories/iosyin-pin/'>iOS音频 (1)</a></li><li><a href='/blog/categories/mac/'>Mac (4)</a></li><li><a href='/blog/categories/mac-duo-xian-cheng/'>Mac-多线程 (1)</a></li><li><a href='/blog/categories/nginx/'>nginx (3)</a></li><li><a href='/blog/categories/php/'>php (3)</a></li><li><a href='/blog/categories/python/'>python (12)</a></li><li><a href='/blog/categories/swift/'>swift (11)</a></li><li><a href='/blog/categories/uml/'>UML (8)</a></li><li><a href='/blog/categories/xcode/'>Xcode (11)</a></li><li><a href='/blog/categories/chan-pin-she-ji/'>产品设计 (2)</a></li><li><a href='/blog/categories/gong-ju/'>工具 (2)</a></li><li><a href='/blog/categories/shu-ju-ku/'>数据库 (2)</a></li><li><a href='/blog/categories/sheng-huo-pian-duan/'>生活片段 (10)</a></li><li><a href='/blog/categories/zhi-ye-sheng-ya/'>职业生涯 (7)</a></li><li><a href='/blog/categories/du-shu/'>读书 (2)</a></li></ul>
</section>
<section>
  <h1>外部链接</h1>
    <ul id="外部链接">
    	<li><a href="https://developer.apple.com">苹果开发者中心</a> </li>
    	<li><a href="http://stackoverflow.com/questions/tagged/ios">stackoverflow</a></li>
    	<li><a href="http://ksnowlv.blog.163.com/blog/#m=0">ksnowlv网易博客</a></li>
	</ul>
</section>

  
</aside>

    </div>
  </div>
  <footer role="contentinfo"><p>
  Copyright &copy; 2017 - 律威 -
  <span class="credit">Powered by <a href="http://octopress.org">Octopress</a></span>

  <script type="text/javascript">var cnzz_protocol = (("https:" == document.location.protocol) ? " https://" : " http://");document.write(unescape("%3Cspan id='cnzz_stat_icon_1253538110'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "v1.cnzz.com/z_stat.php%3Fid%3D1253538110%26online%3D1' type='text/javascript'%3E%3C/script%3E"));</script>

  <script type="text/javascript">
var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://");
document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3F4c1727a94ea20751730e8a556dbdbf82' type='text/javascript'%3E%3C/script%3E"));
</script>

</p>



</footer>
  

<script type="text/javascript">
      var disqus_shortname = 'ksnowlv';
      
        
        var disqus_script = 'count.js';
      
    (function () {
      var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
      dsq.src = 'http://' + disqus_shortname + '.disqus.com/' + disqus_script;
      (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
    }());
</script>








</body>
</html>
